#include <stdio.h>
#include <stdlib.h>
#include "cJSON.h"
#include "cJSON_Utils.h"

// 说明: 该程序演示了如何使用 cJSON 库中的 cJSONUtils_MergePatch 函数来合并两个 JSON 对象。
int main() {
	// 定义两个 JSON 字符串
	const char *json_str1 = "{\"name\":\"John\",\"age\":30}";
	const char *json_str2 = "{\"age\":40,\"is_student\":false}";

	// 解析 JSON 字符串
	cJSON *root1 = cJSON_Parse(json_str1);
	cJSON *root2 = cJSON_Parse(json_str2);

	// 合并 JSON 对象
	cJSONUtils_MergePatch(root1, root2);

	// 打印合并后的 JSON 对象
	char *merged_json_str = cJSON_Print(root1);
	printf("%s\n", merged_json_str);

	// 释放内存
	cJSON_Delete(root1);
	cJSON_Delete(root2);
	free(merged_json_str);

	return 0;
}
